dojo.require("dojo.data.ItemFileWriteStore");
dojo.require("dijit.form.FilteringSelect");

function loadContatos(idNegociacao,inputId){

 	var xhrArgs = {
            url: "/reuniao/interno/retornaJSONContatos",
            content:{ "neg":idNegociacao, "action":"loadAll" },
            handleAs: "json",
            contentType: "application/x-www-form-urlencoded; charset=utf-8",
            load: function(dados) {
            	                
                var contactStore = new dojo.data.ItemFileWriteStore({
                    data: dados
                });
                            
                return contactStore;
            },
            error: function(error) {
               //Do nothing.
                
            }
     };

    
    var deferred = dojo.xhrPost(xhrArgs);
 	return deferred.then( function(contactStore){
 			dijit.byId(inputId).set("store",contactStore);
 			retiraParticipantesFilteringSelect();
 	});
 	
	
	
}

function gotItem (item){
	
	var store = dijit.byId("contactsSelect").store;
		
	var idContato = store.getValue(item,"idContato");
	
	control.contatosBkp[idContato] = item;
		
	dijit.byId("contactsSelect").store.deleteItem(item);
	dijit.byId("contactsSelect").store.save();
	dijit.byId("contactsSelect").set("displayedValue",""); //Gerará um set adicionarParticipante null que entra no try. 
	
}

function retiraParticipantesFilteringSelect(){
	
	var contatos = control.getParticipantes();
		
	for (var i=0;i<contatos.length;i++){
			
		removeContatoStore(contatos[i].idContato);
		
	}
	
	
}


function storeContactToObject(contact){
	
	var p = {};
	
	p.id = contact.id[0];
	p.idContato = contact.idContato[0];
	p.nome = contact.nome[0];
	p.name = contact.name[0];
	p.email = contact.email[0];
	p.tel = contact.tel[0];
	p.cargo = contact.cargo[0];
	p.endereco = contact.endereco[0];
	
	
	return p;
	
}

function removeContatoStore(idContato){
	
	
	
	dijit.byId("contactsSelect").store.fetchItemByIdentity({identity: idContato, onItem: gotItem, onError: gotItem});
	
}
